/*
 
*/

#ifndef __HIFB_H__
#define __HIFB_H__


#ifdef __cplusplus
#if __cplusplus
extern "C" {
#endif
#endif

#include "gfbg.h"

#define IOC_TYPE_HIFB               IOC_TYPE_GFBG
#define FBIOGET_COLORKEY_HIFB       FBIOGET_COLORKEY_GFBG
#define FBIOPUT_COLORKEY_HIFB       FBIOPUT_COLORKEY_GFBG
#define FBIOGET_ALPHA_HIFB          FBIOGET_ALPHA_GFBG
#define FBIOPUT_ALPHA_HIFB          FBIOPUT_ALPHA_GFBG
#define FBIOGET_SCREEN_ORIGIN_HIFB  FBIOGET_SCREEN_ORIGIN_GFBG
#define FBIOPUT_SCREEN_ORIGIN_HIFB  FBIOPUT_SCREEN_ORIGIN_GFBG
#define FBIOGET_DEFLICKER_HIFB      FBIOGET_DEFLICKER_GFBG
#define FBIOPUT_DEFLICKER_HIFB      FBIOPUT_DEFLICKER_GFBG
#define FBIOGET_VBLANK_HIFB         FBIOGET_VBLANK_GFBG
#define FBIOPUT_SHOW_HIFB           FBIOPUT_SHOW_GFBG
#define FBIOGET_SHOW_HIFB           FBIOGET_SHOW_GFBG
#define FBIOGET_CAPABILITY_HIFB     FBIOGET_CAPABILITY_GFBG
#define FBIOPUT_COMPRESSION_HIFB    FBIOPUT_COMPRESSION_GFBG
#define FBIOGET_COMPRESSION_HIFB    FBIOGET_COMPRESSION_GFBG
#define FBIOPUT_DYNAMIC_RANGE_HIFB  FBIOPUT_DYNAMIC_RANGE_GFBG
#define FBIOGET_DYNAMIC_RANGE_HIFB  FBIOGET_DYNAMIC_RANGE_GFBG
#define FBIO_RELEASE_HIFB           FBIO_RELEASE_GFBG
#define FBIOPUT_MDDRDETECT_HIFB     FBIOPUT_MDDRDETECT_GFBG
#define FBIOGET_MDDRDETECT_HIFB     FBIOGET_MDDRDETECT_GFBG

typedef GFBG_SIZE_S HIFB_SIZE_S;
#define HIFB_DYNAMIC_RANGE_SDR8 GFBG_DYNAMIC_RANGE_SDR8
#define HIFB_DYNAMIC_RANGE_SDR10 GFBG_DYNAMIC_RANGE_SDR10
#define HIFB_DYNAMIC_RANGE_HDR10 GFBG_DYNAMIC_RANGE_HDR10
#define HIFB_DYNAMIC_RANGE_HLG GFBG_DYNAMIC_RANGE_HLG
#define HIFB_DYNAMIC_RANGE_SLF GFBG_DYNAMIC_RANGE_SLF
typedef GFBG_DYNAMIC_RANGE_E HIFB_DYNAMIC_RANGE_E;
typedef GFBG_COLORKEY_S HIFB_COLORKEY_S;
typedef GFBG_RECT HIFB_RECT;
typedef GFBG_POINT_S HIFB_POINT_S;
typedef GFBG_DEFLICKER_S HIFB_DEFLICKER_S;
typedef GFBG_ALPHA_S HIFB_ALPHA_S;
#define HIFB_FMT_RGB565 GFBG_FMT_RGB565
#define HIFB_FMT_RGB888 GFBG_FMT_RGB888
#define HIFB_FMT_KRGB444 GFBG_FMT_KRGB444
#define HIFB_FMT_KRGB555 GFBG_FMT_KRGB555
#define HIFB_FMT_KRGB888 GFBG_FMT_KRGB888
#define HIFB_FMT_ARGB4444 GFBG_FMT_ARGB4444
#define HIFB_FMT_ARGB1555 GFBG_FMT_ARGB1555
#define HIFB_FMT_ARGB8888 GFBG_FMT_ARGB8888
#define HIFB_FMT_ARGB8565 GFBG_FMT_ARGB8565
#define HIFB_FMT_RGBA4444 GFBG_FMT_RGBA4444
#define HIFB_FMT_RGBA5551 GFBG_FMT_RGBA5551
#define HIFB_FMT_RGBA5658 GFBG_FMT_RGBA5658
#define HIFB_FMT_RGBA8888 GFBG_FMT_RGBA8888
#define HIFB_FMT_BGR565 GFBG_FMT_BGR565
#define HIFB_FMT_BGR888 GFBG_FMT_BGR888
#define HIFB_FMT_ABGR4444 GFBG_FMT_ABGR4444
#define HIFB_FMT_ABGR1555 GFBG_FMT_ABGR1555
#define HIFB_FMT_ABGR8888 GFBG_FMT_ABGR8888
#define HIFB_FMT_ABGR8565 GFBG_FMT_ABGR8565
#define HIFB_FMT_KBGR444 GFBG_FMT_KBGR444
#define HIFB_FMT_KBGR555 GFBG_FMT_KBGR555
#define HIFB_FMT_KBGR888 GFBG_FMT_KBGR888
#define HIFB_FMT_1BPP GFBG_FMT_1BPP
#define HIFB_FMT_2BPP GFBG_FMT_2BPP
#define HIFB_FMT_4BPP GFBG_FMT_4BPP
#define HIFB_FMT_8BPP GFBG_FMT_8BPP
#define HIFB_FMT_ACLUT44 GFBG_FMT_ACLUT44
#define HIFB_FMT_ACLUT88 GFBG_FMT_ACLUT88
#define HIFB_FMT_PUYVY GFBG_FMT_PUYVY
#define HIFB_FMT_PYUYV GFBG_FMT_PYUYV
#define HIFB_FMT_PYVYU GFBG_FMT_PYVYU
#define HIFB_FMT_YUV888 GFBG_FMT_YUV888
#define HIFB_FMT_AYUV8888 GFBG_FMT_AYUV8888
#define HIFB_FMT_YUVA8888 GFBG_FMT_YUVA8888
#define HIFB_FMT_BUTT GFBG_FMT_BUTT

typedef GFBG_COLOR_FMT_E HIFB_COLOR_FMT_E;
typedef GFBG_CAPABILITY_S HIFB_CAPABILITY_S;
#define HIFB_LAYER_BUF_DOUBLE GFBG_LAYER_BUF_DOUBLE
#define HIFB_LAYER_BUF_ONE GFBG_LAYER_BUF_ONE
#define HIFB_LAYER_BUF_NONE GFBG_LAYER_BUF_NONE
#define HIFB_LAYER_BUF_DOUBLE_IMMEDIATE GFBG_LAYER_BUF_DOUBLE_IMMEDIATE
#define HIFB_LAYER_BUF_FENCE GFBG_LAYER_BUF_FENCE
#define HIFB_LAYER_BUF_BUTT GFBG_LAYER_BUF_BUTT

typedef GFBG_LAYER_BUF_E HIFB_LAYER_BUF_E;
typedef GFBG_SURFACE_S HIFB_SURFACE_S;
typedef GFBG_SURFACEEX_S HIFB_SURFACEEX_S;
typedef GFBG_BUFFER_S HIFB_BUFFER_S;
typedef GFBG_CURSOR_S HIFB_CURSOR_S;
typedef GFBG_DDRZONE_S HIFB_DDRZONE_S;
#define HIFB_LAYER_ANTIFLICKER_NONE GFBG_LAYER_ANTIFLICKER_NONE
#define HIFB_LAYER_ANTIFLICKER_LOW GFBG_LAYER_ANTIFLICKER_LOW
#define HIFB_LAYER_ANTIFLICKER_MIDDLE GFBG_LAYER_ANTIFLICKER_MIDDLE
#define HIFB_LAYER_ANTIFLICKER_HIGH GFBG_LAYER_ANTIFLICKER_HIGH
#define HIFB_LAYER_ANTIFLICKER_AUTO GFBG_LAYER_ANTIFLICKER_AUTO
typedef GFBG_LAYER_ANTIFLICKER_LEVEL_E HIFB_LAYER_ANTIFLICKER_LEVEL_E;
#define HIFB_MIRROR_NONE GFBG_MIRROR_NONE
#define HIFB_MIRROR_HORIZONTAL GFBG_MIRROR_HORIZONTAL
#define HIFB_MIRROR_VERTICAL GFBG_MIRROR_VERTICAL
#define HIFB_MIRROR_BOTH GFBG_MIRROR_BOTH
#define HIFB_MIRROR_BUTT GFBG_MIRROR_BUTT
typedef GFBG_MIRROR_MODE_E HIFB_MIRROR_MODE_E;
#define HIFB_ROTATE_NONE GFBG_ROTATE_NONE
#define HIFB_ROTATE_90 GFBG_ROTATE_90
#define HIFB_ROTATE_180 GFBG_ROTATE_180
#define HIFB_ROTATE_270 GFBG_ROTATE_270
#define HIFB_ROTATE_BUTT GFBG_ROTATE_BUTT

typedef GFBG_ROTATE_MODE_E HIFB_ROTATE_MODE_E;
#define HIFB_LAYERMASK_BUFMODE GFBG_LAYERMASK_BUFMODE
#define HIFB_LAYERMASK_ANTIFLICKER_MODE GFBG_LAYERMASK_ANTIFLICKER_MODE
#define HIFB_LAYERMASK_POS GFBG_LAYERMASK_POS
#define HIFB_LAYERMASK_CANVASSIZE GFBG_LAYERMASK_CANVASSIZE
#define HIFB_LAYERMASK_DISPSIZE GFBG_LAYERMASK_DISPSIZE
#define HIFB_LAYERMASK_SCREENSIZE GFBG_LAYERMASK_SCREENSIZE
#define HIFB_LAYERMASK_BMUL GFBG_LAYERMASK_BMUL
#define HIFB_LAYERMASK_BUTT GFBG_LAYERMASK_BUTT

typedef GFBG_LAYER_INFO_MASKBIT HIFB_LAYER_INFO_MASKBIT;
typedef GFBG_LAYER_INFO_S HIFB_LAYER_INFO_S;

#ifndef __LITEOS__
#define hifb_rgb gfbg_rgb
#define hifb_color2key gfbg_color2key
#endif

#ifdef __cplusplus
#if __cplusplus
}
#endif
#endif
#endif /* __HIFB_H__ */
